COMPUTO

Un journal académique en Statistique et Machine-Learning promouvant la reproductibilité et les modes de publication alternatifs

27/03/2023

Comité éditorial et support technique

Julien Chiquet (Éditeur en chef)

Apprentissage stat. pour le vivant
DR INRAE, Université Paris-Saclay

François-David Collin, Ghislain Durif

Informatique Statistique, IR CNRS
IMAG Montpellier, ENS LYON

Nelle Varoquaux

Machine learning for genomics
CR CNRS, Université Grenoble Alpes

Pierre Neuvial

Statistique, DR CNRS
Institut de Math de Toulouse

Mathurin Massias

Optimisation et Machine-Learning
CR INRIA, Lyon

Chloé-Agathe Azencott

Machine Learning
CR MinesParisTech, Institut Curie

Origine (~ 2020s)

La Société Française de Statistique missionne une cellule “publication” (J. Chiquet puis P. Neuvial) pour faire émerger une revue d’envergure internationale

Constat

Multiplication des journaux “traditionnels”…

😔 dévalorisation des résultats négatifs

😥 peu/pas assez de valorisation du code et des études de cas

😱 ↓ de la qualité des publications et du temps consacré à un article

😱 ↓ de la reproductibilité scientifique (analyses, expériences)

Point de vue

  • besoin de renouvellement de la mise en œuvre de la recherche scientifique
  • besoin de normes plus élevées en matière de publication des résultats

\(\rightsquigarrow\) Émergence de l’idée de Computo

Philosophie

Périmètre scientifique

Promouvoir les contributions en statistique et machine-learning permettant d’évaluer la pertinence d’un modèle et des méthodes associées vis-à-vis d’une question scientifique spécifique

Ouvert

  • Open accès “diamant” (gratuité totale et réutilisation possible)
  • 🅭 🅯 Contenu publié sous licence CC-BY (crédit, modification)
  • Rapports de lecture et discussions disponibles après acceptation (relecteurs anonymes)

\(\rightsquigarrow\) En accord avec le Budapest Open Access Initiative (BOAI) and le Plan S

Reproductible

  • La reproductibilité numérique des résultats est une condition nécessaire
  • Code et données doivent être disponibles, pour partie exécuté et intégralement exécutable

Mise en place

Lancement officiel fin 2021

Modèle “économique”

  • Quelques acharné.e.s
  • Outils de la communauté
  • Soutiens Institutionnels (INRAE, CNRS, SFdS)

Fonctionnement

Système d’écriture

texte (markdown) + math (\(\LaTeX\)) + code (Python/R/Julia), biblio (bib\(\TeX\))

Système de publication

Gestion de l’environnement, Compilation, Publication multiformats

Système de relecture

  • Échanges anonymes publiés après acceptation
  • Bases de relecteurs/relectrices
  • [Passage de Scholastica à Open review en cours]

Solutions/Proto

Expérience renouvellée

Reproductibilité éditoriale

Validation scientifique

Les outils de l’auteur.e

Modèle de document

Extension quarto Computo

Modèle de soumission

Des dépôts template github

modèles de document + doc + services de publication pré-configurés

En local

  • Éditeur (VS Code, Rstudio, NeoVim)
  • Quarto (compilation)
  • Julia / R / Python
  • gestionnaire de version git

Point de vue l’auteur.e (1/3)

Étape 0: mise en place d’un dépôt git

Clone d’un des dépôts template (R, Python Julia) pour commencer

Étape 1. Écriture de l’article

À vous de jouer, en local (même esprit qu’en Jupyter/Rmarkdown)

Étape 2: configuration de l’environnement

venv: fichier requirement.txt

jupyter
matplotlib
numpy

Le fichier requirements.txt est versionné et utilisé dans l’action de compilation/publication

renv: générer le fichier renv.lock à l’aide du package dédié

renv::init()
renv::install("ggplot2") # or equivalently install.packages("ggplot2")
renv::snapshot()

Le fichier renv.lock est versionné et utilisé dans l’action de compilation/publication

Pkg: gestionnaire de package natif de Julia

add Plots;
add IJulia

Les fichiers Project.toml et Manifest.toml sont générés et versionnés et utilisés dans l’action de compilation/publication

Point de vue de l’auteur.e (2/3)

Étape 3: reproductibilité

Un git push lancera l’action dédiée à la compilation et la publication

name: build
on: push
jobs:
  build-deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Check out repository
        uses: actions/checkout@v2

      - name: Set up quarto
        uses: quarto-dev/quarto-actions/setup@v2
        # [...]

      - name: Install Computo extension for Quarto
        run: |
            quarto add --no-prompt computorg/computo-quarto-extension
            
      - name: Install Python and Dependencies
        uses: actions/setup-python@v4
        # [...]
      - run: pip install -r requirements.txt

      - name: Render and Publish
        uses: quarto-dev/quarto-actions/publish@v2
        # [...]

Point de vue de l’auteur.e (3/3)

Étape 4: soumission

Si le processus d’action a fonctionné, un

Point de vue de l’éditeur

Une fois le processus de relecture “traditionnel” achevé, un processus en 3 phases

  1. Acceptation
  2. Pré-production
  3. Publication

incluant

  • Copie du dépôt de l’auteur.e
  • Mise en forme de la version finale
  • Publication des rapports de relecteurs/trices
  • Entrée dans la base bibliograhique du journal
  • Copie sur Software Heritage

Bilan après un an et demi de fonctionnement


🥲 Processus opérationnel + doi, ISSN

🙂 4 articles publiés, 6 articles en cours de relecture

🙂 4 présentations (Montpellier, Toronto, Humastica, Grenoble)

🤯 Difficulté à trouver des relecteurs

🤔 Support institutionnel ?


Comment aider?

Éléments de discussion

Sur certains choix

  • quarto: dynamique, langage agnostique, issu de la communauté (pandoc)
  • Github: dynamique, lien avec quarto, pas institutionnel

Perpectives

  • Mise à disposition de moyens computationnels
  • Support Gitlab complet

Positionement/inspiration